home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / hpux.inc < prev    next >
Text File  |  2005-03-31  |  2KB  |  112 lines

  1. # -*- Fundamental -*-
  2. #
  3. # (C) Tenable Network Security
  4. #
  5. # This script is released under the terms of the Tenable License
  6. #
  7. # hpux.inc 
  8. # $Revision: 1.1 $
  9. #
  10.  
  11.  
  12. #######################################################
  13. # hpux_check_ctx() returns :                          #
  14. #    1 if system is present in the list            #
  15. #    0 if not                                      #
  16. #######################################################
  17.  
  18. function hpux_check_ctx (ctx) 
  19. {
  20.  local_var os, hw, list, val;
  21.  
  22.  os = get_kb_item ("Host/HP-UX/version");
  23.  hw = get_kb_item ("Host/HP-UX/hardware");
  24.  
  25.  list = split(ctx, sep:' ', keep:0);
  26.  foreach elem (list)
  27.  {
  28.   val = split (elem, sep:":", keep:0);
  29.   if ((val[0] == hw) && (val[1] == os))
  30.     return 1;
  31.  }
  32.  
  33.  return 0;
  34. }
  35.  
  36.  
  37.  
  38. function hpux_installed (app)
  39. {
  40.  local_var swlist, installed_app;
  41.  
  42.  swlist = get_kb_item("Host/HP-UX/swlist");
  43.  
  44.  if ( strlen(app) )
  45.  {
  46.    installed_app = egrep (pattern:string(app,'[\t ]+'), string:swlist);
  47.    if (installed_app)
  48.    {
  49.       return 1;
  50.    }
  51.  }
  52.  
  53.  return 0;
  54. }
  55.  
  56.  
  57.  
  58. #######################################################
  59. # hpux_patch_installed() returns :                    #
  60. #    1 if one of the patches is installed          #
  61. #    0 if not                                      #
  62. #######################################################
  63.  
  64. function hpux_patch_installed(patches) 
  65. {
  66.  local_var list, elem, installed_app;
  67.  
  68.  list = split(patches, sep:' ', keep:0);
  69.  foreach elem (list)
  70.  {
  71.   if ( hpux_installed (app:elem) == 1)
  72.     return 1;
  73.  }
  74.  
  75.  return 0;
  76. }
  77.  
  78.  
  79.  
  80. #######################################################
  81. # hpux_check_patch() returns :                        #
  82. #    1 if the patch is not installed               #
  83. #    0 if installed or not needed                  #
  84. #######################################################
  85.  
  86. function hpux_check_patch (app, version)
  87. {
  88.  local_var swlist, installed_app, installed_version;
  89.  
  90.  swlist = get_kb_item ("Host/HP-UX/swlist");
  91.  if ( strlen(app) )
  92.  {
  93.    installed_app = egrep (pattern:string(app,'[\t ]+'), string:swlist);
  94.    if ((installed_app) && !egrep (pattern:"^#.*", string:installed_app))
  95.    {
  96.      if (!isnull (version))
  97.      {
  98.       installed_version = ereg_replace (pattern:string('[\t ]+', app, '[\t ]+(.*)'), replace:"\1", string:installed_app);
  99.       installed_version = chomp (installed_version);
  100.       if (installed_version >< version)
  101.         return 1;
  102.      }
  103.      else
  104.        return 1;
  105.    }
  106.  }
  107.  
  108.  return 0;
  109. }
  110.  
  111.  
  112.